Use Case
システムが提供する機能を、エンドユーザの視点から記述したもの
ドメイン固有というよりは、アプリケーション固有のbusiness logic
how
名付けたのはIvar Jacobson
抽象度の位置的には「Entity等の内部」と「UIやDB等の外部」の間に在る
かなり内部寄りで、business logicのwrapperという感じ
business logicを、いつ・どのように呼ぶかを規定したルールを記述する
故に、UI等の外部システムに対する知識は持たない
「使用してるライブラリがReactである」と言った知識も持っていない
その仕様が、アプリケーションの存在を前提するか否かでレイヤーを切れる
Domain知識とUseCaseの違い
アプリケーションのコード上でuse caseを一覧して見ることでどういうアプリケーションなのかが一目瞭然になる
Package by Usecase
「このアプリケーションの機能一覧を教えて」と問うた時に、欲しい物ってuse caseの一覧である、と言えそうmrsekut.icon
なんか「機能」って聞くと名詞で回答したくなる
「投稿機能があります」ってだけで本当に満足行く回答になってるのか微妙じゃない?
「投稿できる」「削除できる」みたいな一覧が欲しいのでは?
/mrsekut-book-4048930656/160 (第16章 独立性)
/mrsekut-book-4048930656/194 (ユースケース)
https://yoskhdia.hatenablog.com/entry/2016/10/18/152624